1. Field of the Invention
This invention relates generally to circular scrolling on a touchpad. More specifically, the present invention relates to moving an object in a generally circular manner on the surface of a touchpad and causing a list to be scrolled as long as the object is moving, wherein a method is provided for activating a scrolling function, wherein a method is provided for determining in what direction scrolling should occur, and wherein a method is provided for determining when the direction of scrolling should change.
2. Description of Related Art
Touchpads are being used in many portable electronic appliances and in stationary electronic devices to manipulate or access data. As touchpads are becoming ubiquitous as data entry and control interfaces, great effort is being expended on making touchpads easier and more intuitive to use. One common data manipulation paradigm is to use a touchpad to scroll through a list of items being shown on a display screen. One example of using a touchpad for scrolling is in a portable music player. The user can scroll through a list of songs or playlists of songs and make a selection. But the portable music player is only one example of a device using a touchpad. Other portable electronic appliances include many brands of MP3 players, portable video players, digital cameras and camcorders, mobile telephones, and many different portable entertainment devices. But even desktop devices such as desktop computers take advantage of scrolling methods that are quick and easy to activate and use.
One of the main problems that many portable electronic appliances have is that their size limits the number of ways in which communicating with the appliances is possible. One reason is the very limited amount of space that is available for a user interface. For example, mobile telephones that require a telephone keypad are now replacing many personal digital assistants (PDAs). Typically, PDAs require a keyboard for data entry. The inventors of the present invention were involved in the discovery and development of a touchpad that is disposed underneath a telephone keypad. Placing the keypad under a telephone keymat made the best possible use of the limited space available for data entry.
Other developers and users of portable electronic appliances have seen the benefits that come from using a circular touchpad. The very nature of a circular touchpad encourages continuous motion in two directions. However, a circular touchpad typically provides less functionality for other touchpad functions, such as cursor manipulation. Thus, it would be an advantage to provide improved scrolling functions on the typical rectangular touchpad shape.
Consider a personal digital assistant (PDA). A PDA often has to provide a full keyboard for the user in order to enter the characters of an alphabet. Even more difficult is the problem of having to deal with graphical interfaces. PDAs and even mobile telephones are becoming portable “computers” that do more than just store information or make telephone calls. Small portable electronic appliances now manipulate and process data, much like a notebook computer. Furthermore, graphical interfaces present some unique challenges when providing a user interface.
The difficulties described are not unique to PDAs and mobile telephones. Even less complex devices are providing more and more functionality. Consider again the MP3 audio player that enables a user to list songs, and then move through that list in order to select a song to play, move to a playlist, or examine different settings or features.
One feature of these portable electronic appliances that is common to all of those listed above and other appliances under development is the need to quickly and easily move or scroll through lists and make selections. It should be noted that all of the portable electronic appliances listed above have or will soon have touchpads disposed somewhere on or within them. This evolution is only natural considering the complex functions and graphical interfaces that they use. However, these portable electronic appliances presently lack a means for providing better activation and control of scrolling functions.
Thus, it would be an improvement over the prior art to provide a system and method for providing rapid and simple activation of the scrolling function. It would be a further improvement to provide control of the scrolling function in a mariner that is different from typical use of the touchpad in order to perform other functions, such as cursor control.
As background regarding touchpads, it is useful to understand one embodiment of touchpad technology that is used to implement the present invention. Accordingly, a brief explanation of touchpad technology from CIRQUE® Corporation is provided.
The touchpad technology from CIRQUE® Corporation is a mutual capacitance-sensing device and an example is illustrated in FIG. 1. In this touchpad, a grid of row and column electrodes is used to define the touch-sensitive area of the touchpad. Typically, the touchpad is a rectangular grid of approximately 16 by 12 electrodes, or 8 by 6 electrodes when there are space constraints. Interlaced with these row and column electrodes is a single sense electrode. All position measurements are made through the sense electrode.
In more detail, FIG. 1 shows a capacitance sensitive touchpad 10 as taught by Cirque® Corporation that includes a grid of row (12) and column (14) (or X and Y) electrodes in a touchpad electrode grid. All measurements of touchpad parameters are taken from a single sense electrode 16 also disposed on the touchpad electrode grid, and not from the X or Y electrodes 12, 14. No fixed reference point is used for measurements. A touchpad sensor circuit 20 generates signals from P, N generators 22, 24 that are sent directly to the X and Y electrodes 12, 14 in various patterns. Accordingly, there is a one-to-one correspondence between the number of electrodes on the touchpad electrode grid, and the number of drive pins on the touch sensor circuitry 20.
The touchpad 10 does not depend upon an absolute capacitive measurement to determine the location of a finger (or other capacitive object) on the touchpad surface. The touchpad 10 measures an imbalance in electrical charge to the sense line 16. When no pointing object is on the touchpad 10, the touch sensor circuitry 20 is in a balanced state, and there is no signal on the sense line 16. There may or may not be a capacitive charge on the electrodes 12, 14. In the methodology of CIRQUE® Corporation, that is irrelevant. When a pointing device creates imbalance because of capacitive coupling, a change in capacitance occurs on the plurality of electrodes 12, 14 that comprise the touchpad electrode grid. What is measured is the change in capacitance, and not the absolute capacitance value on the electrodes 12, 14. The touchpad 10 determines the change in capacitance by measuring the amount of charge that must be injected onto the sense line 16 to reestablish or regain balance on the sense line.
The touchpad 10 must make two complete measurement cycles for the X electrodes 12 and for the Y electrodes 14 (four complete measurements) in order to determine the position of a pointing object such as a finger. The steps are as follows for both the X 12 and the Y 14 electrodes:
First, a group of electrodes (say a select group of the X electrodes 12) are driven with a first signal from P, N generator 22, and a first measurement using mutual capacitance measurement device 26 is taken to determine the location of the largest signal. However, it is not possible from this one measurement to know whether the finger is on one side or the other of the closest electrode to the largest signal.
Next, shifting by one electrode to one side of the closest electrode, the group of electrodes is again driven with a signal. In other words, the electrode immediately to the one side of the group is added, while the electrode on the opposite side of the original group is no longer driven.
Third, the new group of electrodes is driven and a second measurement is taken.
Finally, using an equation that compares the magnitude of the two signals measured, the location of the finger is determined.
Accordingly, the touchpad 10 measures a change in capacitance in order to determine the location of a finger. All of this hardware and the methodology described above assume that the touch sensor circuit 20 is directly driving the electrodes 12, 14 of the touchpad 10. Thus, for a typical 12×16 electrode grid touchpad, there are a total of 28 pins (12+16=28) available from the touch sensor circuitry 20 that are used to drive the electrodes 12, 14 of the electrode grid.
The sensitivity or resolution of the CIRQUE® Corporation touchpad is much higher than the 16 by 12 grid of row and column electrodes implies. The resolution is typically on the order of 960 counts per inch, or greater. The exact resolution is determined by the sensitivity of the components, the spacing between the electrodes on the same rows and columns, and other factors that are not material to the present invention.
Although the CIRQUE® touchpad described above uses a grid of X and Y electrodes and a separate and single sense electrode, the sense electrode can also be replaced by the X or Y electrodes by using multiplexing of signals and sensing functions. Either design will enable the present invention to function.
The present invention is not the first that has been developed to provide circular scrolling capability through use of a general purpose touchpad. Accordingly, it is also useful to examine these earlier attempts to provide circular scrolling capability.
First, it is noted that for the purposes of this document, circular scrolling is defined as the movement of a pointing object on the surface of a touchpad in a curvilinear manner. The curvilinear movements of the pointing object can include partial arcs, complete arcs (ellipses) and curved lines having arcs that curve in more than one direction (such as an “S” curve that has both clockwise (CW) and counter-clockwise (CCW) movement). Curvilinear paths will also be defined as including curved portions interrupted by substantially straight portions. The curvilinear paths can turn in a single direction (either CW or CCW) before stopping, or the paths can either gradually or abruptly change to an opposite direction.
A first prior art reference that should be considered was issued to Kishi as U.S. Pat. No. 5,903,229 (the '229 patent). The '229 patent teaches determining if a path that is traced by a pointing object on the surface of a touchpad is CW or CCW and is illustrated in FIG. 2. If the path is CW, then scrolling always occurs in one direction. If the path is CCW, then scrolling always occurs in an opposite direction.
To determine whether a path is CW or CCW, the '229 patent teaches the use of a “rotation direction detector” to determine the gradient or the slope of two adjacent segments along a curvilinear path being traced on a touchpad surface. The '229 patent teaches this gradient method on the belief that it is simpler than performing a “more complicated” angular calculation, and therefore that gradient calculations reduce calculation overhead on a processor so that the device can operate in real-time.
Interestingly, the amount of scrolling to be performed is never claimed or explained. It must be assumed that the amount of scrolling is a function of distance traveled by the pointing object on the touchpad surface as no method is described.
One important element of the '229 patent is that the direction of scrolling is static. In other words, scrolling in a CW manner will always cause scrolling to occur in one direction only, such as down in a list, and this down direction will always be associated with CW scrolling.
Another prior art that should also be considered is U.S. Pat. No. 6,771,280 B2 issued to Fujisaki et al. (the '280 patent). The '280 patent teaches that entering the scroll mode is provided through key-input or tapping action.
Once the scrolling mode is engaged, scrolling information is obtained from two consecutive vectors as shown in FIG. 3. The angle between a first vector and a second vector determines the direction of scrolling. The amount of scrolling is a function of the magnitude of the second vector. It is noted that each second vector becomes a first vector as a new second vector is added as the pointing object moves along a touchpad surface. Note that the length of the second vector is close to but actually almost always less than the actual distance moved. The only time that the second vector is the same length as the actual distance traveled is when the pointing object is moving in a perfectly straight line. Accordingly, if a finger were to move in a perfectly straight line, there would be no angle between a first and second vector. This should mean that there would be no scrolling. However, as perfectly linear movement is as a matter of practicality impossible, a list might jump around erratically without any means provided to smooth out this reaction.
In summary, the '280 patent teaches that the direction of scrolling is either CW or CCW depending on the angle between two vectors. This is identical to the method of the '229 patent in that a particular direction of rotation is always associated with one particular direction of scrolling. The amount of scrolling is a function of the length of the second vector, which might be slightly shorter than actual distance moved. This method is therefore almost identical to the '229 patent.
The '229 patent and the '280 patent are both identical in that circular movement of a pointing object in a particular direction will always result in scrolling through a list in a particular direction, and that changing a direction of rotation will result in reversal of the direction of movement of scrolling through a list. While the '229 patent does not explicitly explain, it can be assumed that the two patents are also similar in that the amount of scrolling in the '229 patent is probably a function of the distance moved as is stated in '280 patent. It would be an improvement over the state of the art in circular scrolling to provide a new method wherein circular movement in a particular direction did not result in scrolling in a single fixed direction. It would also be an improvement to enable any continuous movement to result in continued scrolling through a list, even when CW movements are combined with CCW movements.